package cn.iocoder.yudao.module.promotion.enums.prizedraw;

import cn.iocoder.yudao.framework.common.core.ArrayValuable;
import cn.iocoder.yudao.module.promotion.enums.kefu.KeFuMessageContentTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.Arrays;
import java.util.Optional;

/**
 * @description
 * @Author: jun
 * @Date: 2024/7/17 23:25
 */
@AllArgsConstructor
@Getter
public enum PrizeDrawAwardTypeEnum implements ArrayValuable<Integer> {

    //奖品类型（1：积分，2：优惠券，3：其他虚拟，4：体系内实物商品，5：其他实物）
    POINT(1, "积分"),
    COUPON(2, "优惠券"),
    OTHER_VIRTUAL(3, "其他虚拟"),
    WITHIN_SYSTEM_IN_KIND(4, "体系内实物商品"),
    OTHER_IN_KIND(5, "其他实物"),
    NOTHING(6, "无奖品");

    /**
     * 类型
     */
    private final Integer type;

    /**
     * 名称
     */
    private final String name;

    private static final Integer[] ARRAYS = Arrays.stream(values()).map(PrizeDrawAwardTypeEnum::getType).toArray(Integer[]::new);

    @Override
    public Integer[] array() {
        return ARRAYS;
    }
}
